An embodiment of the invention is related to electronic messaging protocols for a set of data networks that are interconnected with routers (e.g., the Internet), and in particular to the processing of messages having attachments. Other embodiments are also described and claimed.
Electronic messaging protocols such as those that are used to pass messages over the Internet are in widespread use. Examples of such protocols include electronic mail (email), news, and online-chat (sometimes referred to as Instant Messaging) protocols. These protocols typically define a message as some form of data structure that has (i) a message body and (ii) one or more header fields. The header fields may contain information about where the message came from (e.g., the “from:” field of an email message), where it is going (e.g., the “to:” field of an email message), its subject, when it was sent, etc. The message body on the other hand may contain the body or essence of the message, in the form of data that typically has a predefined format (e.g., consists only of ASCII characters).
Some protocols allow a sender to enclose or “attach” in the message body an object that is not in the predefined format. These protocols can automatically translate between the predefined format and some other format used by a given software application (e.g., between 7-bit ASCII characters and 8-bit binary characters). The attached objects may be “detached” by the recipient of the message, using the translation protocol. For example, with respect to email messages, the Multipurpose Internet Mail Extensions (MIME) protocol allows non-ASCII objects such as image files, audio/video files, and application software files (e.g., word processor, spreadsheet, and database program files) to become attachments in a message. Attachments are represented to a user on a display monitor as, for example, a small icon together with an identifier such as its filename.